期刊
  出版年
  关键词
结果中检索 Open Search
Please wait a minute...
选择: 显示/隐藏图片
1. 基于图像相似度检测代码克隆
王亚芳, 刘东升, 侯敏
计算机应用    2019, 39 (7): 2074-2080.   DOI: 10.11772/j.issn.1001-9081.2019010083
摘要552)      PDF (1041KB)(305)    收藏

目前在代码克隆检测领域,学者们主要从文本、词汇、语法和语义四种角度展开研究,然而长期以来代码克隆检测效果并未取得新的突破。针对这一问题,从图像处理角度提出了一种基于图像相似度的新型代码克隆检测(CCIS)方法。首先对源代码进行移除注释、空白符等操作,以获取"干净"的函数片段,并将函数中的标识符、关键字等进行高亮处理;然后将处理好的源代码转换为图像,并对图像进行规范化处理;最后使用Jaccard距离和感知哈希算法进行检测,得到代码克隆信息。为了验证实验的有效性,使用6款开源软件构建评价数据集进行测试。实验结果表明,CCIS方法能够检测出100%的类型一代码克隆、88%的类型二代码克隆与60%的类型三代码克隆,因此CCIS方法可以很好地进行代码克隆检测。

参考文献 | 相关文章 | 多维度评价
2. 基于决策树推荐克隆重构的方法
折蓉蓉, 张丽萍, 侯敏, 闫盛
计算机应用    2018, 38 (7): 2037-2043.   DOI: 10.11772/j.issn.1001-9081.2017122997
摘要404)      PDF (1208KB)(241)    收藏
针对克隆代码的大量使用会导致长期软件维护问题甚至引入错误,提出了一种基于决策树的分类器来推荐克隆进行重构。首先,使用NiCad进行克隆检测;其次,收集了与克隆关系、克隆代码段和克隆上下文都相关的特征;然后,利用决策树分类器训练;最后,利用 K折交叉评估分类结果。在5款开源软件中对近600多个克隆实例进行实验,实验结果表明所提方法为每个目标系统推荐克隆重构实例时达到80%的精度。
参考文献 | 相关文章 | 多维度评价
3. 基于软件多版本演化提取克隆谱系
涂颖, 张丽萍, 王春晖, 侯敏, 刘东升
计算机应用    2015, 35 (4): 1169-1173.   DOI: 10.11772/j.issn.1001-9081.2015.04.1169
摘要974)      PDF (985KB)(624)    收藏

针对单个版本克隆检测结果不足以体现克隆特征这一问题,从软件多版本中自动提取克隆谱系,获得克隆在软件演化过程中表现出的模式和特征。首先基于克隆代码Token表示及其所在文件名称、函数名称等位置属性,准确映射软件历时演化版本间的克隆代码,进而识别克隆演化模式;然后匹配克隆类ID号,合并所有相邻版本间的映射结果及演化模式信息,得到克隆谱系。同时开发了相应的克隆谱系自动提取工具FCG对6款开源软件进行了测试,发现当前版本中克隆代码平均生命周期占所研究版本总数的70%以上,且大部分没有发生变化,说明大部分克隆能被较好地维护,但也存在少量不稳定的克隆可能导致软件缺陷,需要修改或重构。实验结果表明FCG可高效提取克隆谱系,有助于更好地理解克隆及有针对性地管理克隆。

参考文献 | 相关文章 | 多维度评价
4. 基于Token编辑距离检测克隆代码
张久杰, 王春晖, 张丽萍, 侯敏, 刘东升
计算机应用    2015, 35 (12): 3536-3543.   DOI: 10.11772/j.issn.1001-9081.2015.12.3536
摘要1271)      PDF (1361KB)(465)    收藏
针对当前Type-3克隆代码检测工具较少、效率偏低等问题,提出了一种基于Token的能有效检测Type-3克隆代码的检测方法。该方法同时能有效检测Type-1和Type-2克隆代码。首先将源代码Token化得到特定代码粒度的Token串,其次将所有Token串的定长子串进行映射,在对映射信息进行查询的基础上,利用编辑距离算法确定克隆对,然后通过并查集算法快速构建克隆群,最终反馈克隆代码信息。实现了原型工具FClones,利用基于代码突变的框架对工具进行了评价,并与领域内较优秀的两款工具NiCad及SimCad进行了对比。实验结果表明,FClones在检测三类克隆代码时查全率均不低于95%,查准率均不低于98%,能更好地检测Type-3克隆代码。
参考文献 | 相关文章 | 多维度评价
5. 基于改进PCNN和知识蒸馏的学科知识实体间关系抽取
赵宇博 张丽萍 闫盛 侯敏 高茂
《计算机应用》唯一官方网站    DOI: 10.11772/j.issn.1001-9081.2023081065
录用日期: 2023-12-20